SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for system_dept
-- ----------------------------
DROP TABLE IF EXISTS system_dept;
CREATE TABLE system_dept
(
  id             bigint      NOT NULL AUTO_INCREMENT COMMENT '部门id',
  name           varchar(30) NOT NULL DEFAULT '' COMMENT '部门名称',
  parent_id      bigint      NOT NULL DEFAULT 0 COMMENT '父部门id',
  sort           int         NOT NULL DEFAULT 0 COMMENT '显示顺序',
  leader_user_id bigint      NULL     DEFAULT NULL COMMENT '负责人',
  phone          varchar(11) NULL     DEFAULT NULL COMMENT '联系电话',
  email          varchar(50) NULL     DEFAULT NULL COMMENT '邮箱',
  status         tinyint     NOT NULL COMMENT '部门状态（0正常 1停用）',
  creator        varchar(64) NULL     DEFAULT '' COMMENT '创建者',
  create_time    datetime    NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater        varchar(64) NULL     DEFAULT '' COMMENT '更新者',
  update_time    datetime    NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted        bit(1)      NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id      bigint      NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '部门表';

-- ----------------------------
-- Table structure for system_post
-- ----------------------------
DROP TABLE IF EXISTS system_post;
CREATE TABLE system_post
(
  id          bigint       NOT NULL AUTO_INCREMENT COMMENT '岗位ID',
  code        varchar(64)  NOT NULL COMMENT '岗位编码',
  name        varchar(50)  NOT NULL COMMENT '岗位名称',
  sort        int          NOT NULL COMMENT '显示顺序',
  status      tinyint      NOT NULL COMMENT '状态（0正常 1停用）',
  remark      varchar(500) NULL     DEFAULT NULL COMMENT '备注',
  creator     varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id   bigint       NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '岗位信息表';

-- ----------------------------
-- Table structure for system_user_post
-- ----------------------------
DROP TABLE IF EXISTS system_user_post;
CREATE TABLE system_user_post
(
  id          bigint      NOT NULL AUTO_INCREMENT COMMENT 'id',
  user_id     bigint      NOT NULL DEFAULT 0 COMMENT '用户ID',
  post_id     bigint      NOT NULL DEFAULT 0 COMMENT '岗位ID',
  creator     varchar(64) NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime    NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64) NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime    NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)      NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id   bigint      NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '用户岗位表';

-- ----------------------------
-- Table structure for system_dict_data
-- ----------------------------
DROP TABLE IF EXISTS system_dict_data;
CREATE TABLE system_dict_data
(
  id          bigint       NOT NULL AUTO_INCREMENT COMMENT '字典编码',
  sort        int          NOT NULL DEFAULT 0 COMMENT '字典排序',
  label       varchar(100) NOT NULL DEFAULT '' COMMENT '字典标签',
  value       varchar(100) NOT NULL DEFAULT '' COMMENT '字典键值',
  dict_type   varchar(100) NOT NULL DEFAULT '' COMMENT '字典类型',
  status      tinyint      NOT NULL DEFAULT 0 COMMENT '状态（0正常 1停用）',
  color_type  varchar(100) NULL     DEFAULT '' COMMENT '颜色类型',
  css_class   varchar(100) NULL     DEFAULT '' COMMENT 'css 样式',
  remark      varchar(500) NULL     DEFAULT NULL COMMENT '备注',
  creator     varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '字典数据表';
-- ----------------------------
-- Table structure for system_dict_type
-- ----------------------------
DROP TABLE IF EXISTS system_dict_type;
CREATE TABLE system_dict_type
(
  id           bigint       NOT NULL AUTO_INCREMENT COMMENT '字典主键',
  name         varchar(100) NOT NULL DEFAULT '' COMMENT '字典名称',
  type         varchar(100) NOT NULL DEFAULT '' COMMENT '字典类型',
  status       tinyint      NOT NULL DEFAULT 0 COMMENT '状态（0正常 1停用）',
  remark       varchar(500) NULL     DEFAULT NULL COMMENT '备注',
  creator      varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time  datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater      varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time  datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted      bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  deleted_time datetime     NULL     DEFAULT NULL COMMENT '删除时间',
  PRIMARY KEY (id) USING BTREE,
  UNIQUE INDEX dict_type (type ASC) USING BTREE
) ENGINE = InnoDB COMMENT = '字典类型表';

-- ----------------------------
-- Table structure for system_login_log
-- ----------------------------
DROP TABLE IF EXISTS system_login_log;
CREATE TABLE system_login_log
(
  id          bigint       NOT NULL AUTO_INCREMENT COMMENT '访问ID',
  log_type    bigint       NOT NULL COMMENT '日志类型',
  trace_id    varchar(64)  NOT NULL DEFAULT '' COMMENT '链路追踪编号',
  user_id     bigint       NOT NULL DEFAULT 0 COMMENT '用户编号',
  user_type   tinyint      NOT NULL DEFAULT 0 COMMENT '用户类型',
  username    varchar(50)  NOT NULL DEFAULT '' COMMENT '用户账号',
  result      tinyint      NOT NULL COMMENT '登陆结果',
  user_ip     varchar(50)  NOT NULL COMMENT '用户 IP',
  user_agent  varchar(512) NOT NULL COMMENT '浏览器 UA',
  creator     varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id   bigint       NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '系统访问记录';

-- ----------------------------
-- Table structure for system_operate_log
-- ----------------------------
DROP TABLE IF EXISTS system_operate_log;
CREATE TABLE system_operate_log
(
  id             bigint        NOT NULL AUTO_INCREMENT COMMENT '日志主键',
  trace_id       varchar(64)   NOT NULL DEFAULT '' COMMENT '链路追踪编号',
  user_id        bigint        NOT NULL COMMENT '用户编号',
  user_type      tinyint       NOT NULL DEFAULT 0 COMMENT '用户类型',
  type           varchar(50)   NOT NULL COMMENT '操作模块类型',
  sub_type       varchar(50)   NOT NULL COMMENT '操作名',
  biz_id         bigint        NOT NULL COMMENT '操作数据模块编号',
  action         varchar(2000) NOT NULL DEFAULT '' COMMENT '操作内容',
  extra          varchar(2000) NOT NULL DEFAULT '' COMMENT '拓展字段',
  request_method varchar(16)   NULL     DEFAULT '' COMMENT '请求方法名',
  request_url    varchar(255)  NULL     DEFAULT '' COMMENT '请求地址',
  user_ip        varchar(50)   NULL     DEFAULT NULL COMMENT '用户 IP',
  user_agent     varchar(200)  NULL     DEFAULT NULL COMMENT '浏览器 UA',
  creator        varchar(64)   NULL     DEFAULT '' COMMENT '创建者',
  create_time    datetime      NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater        varchar(64)   NULL     DEFAULT '' COMMENT '更新者',
  update_time    datetime      NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted        bit(1)        NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id      bigint        NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '操作日志记录 V2 版本';

-- ----------------------------
-- Table structure for system_oauth2_access_token
-- ----------------------------
DROP TABLE IF EXISTS system_oauth2_access_token;
CREATE TABLE system_oauth2_access_token
(
  id            bigint       NOT NULL AUTO_INCREMENT COMMENT '编号',
  user_id       bigint       NOT NULL COMMENT '用户编号',
  user_type     tinyint      NOT NULL COMMENT '用户类型',
  user_info     varchar(512) NOT NULL COMMENT '用户信息',
  access_token  varchar(255) NOT NULL COMMENT '访问令牌',
  refresh_token varchar(32)  NOT NULL COMMENT '刷新令牌',
  client_id     varchar(255) NOT NULL COMMENT '客户端编号',
  scopes        varchar(255) NULL     DEFAULT NULL COMMENT '授权范围',
  expires_time  datetime     NOT NULL COMMENT '过期时间',
  creator       varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time   datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater       varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time   datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted       bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id     bigint       NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE,
  INDEX idx_access_token (access_token ASC) USING BTREE,
  INDEX idx_refresh_token (refresh_token ASC) USING BTREE
) ENGINE = InnoDB COMMENT = 'OAuth2 访问令牌';

-- ----------------------------
-- Table structure for system_oauth2_approve
-- ----------------------------
DROP TABLE IF EXISTS system_oauth2_approve;
CREATE TABLE system_oauth2_approve
(
  id           bigint       NOT NULL AUTO_INCREMENT COMMENT '编号',
  user_id      bigint       NOT NULL COMMENT '用户编号',
  user_type    tinyint      NOT NULL COMMENT '用户类型',
  client_id    varchar(255) NOT NULL COMMENT '客户端编号',
  scope        varchar(255) NOT NULL DEFAULT '' COMMENT '授权范围',
  approved     bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否接受',
  expires_time datetime     NOT NULL COMMENT '过期时间',
  creator      varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time  datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater      varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time  datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted      bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id    bigint       NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = 'OAuth2 批准表';

-- ----------------------------
-- Table structure for system_oauth2_client
-- ----------------------------
DROP TABLE IF EXISTS system_oauth2_client;
CREATE TABLE system_oauth2_client
(
  id                             bigint        NOT NULL AUTO_INCREMENT COMMENT '编号',
  client_id                      varchar(255)  NOT NULL COMMENT '客户端编号',
  secret                         varchar(255)  NOT NULL COMMENT '客户端密钥',
  name                           varchar(255)  NOT NULL COMMENT '应用名',
  logo                           varchar(255)  NOT NULL COMMENT '应用图标',
  description                    varchar(255)  NULL     DEFAULT NULL COMMENT '应用描述',
  status                         tinyint       NOT NULL COMMENT '状态',
  access_token_validity_seconds  int           NOT NULL COMMENT '访问令牌的有效期',
  refresh_token_validity_seconds int           NOT NULL COMMENT '刷新令牌的有效期',
  redirect_uris                  varchar(255)  NOT NULL COMMENT '可重定向的 URI 地址',
  authorized_grant_types         varchar(255)  NOT NULL COMMENT '授权类型',
  scopes                         varchar(255)  NULL     DEFAULT NULL COMMENT '授权范围',
  auto_approve_scopes            varchar(255)  NULL     DEFAULT NULL COMMENT '自动通过的授权范围',
  authorities                    varchar(255)  NULL     DEFAULT NULL COMMENT '权限',
  resource_ids                   varchar(255)  NULL     DEFAULT NULL COMMENT '资源',
  additional_information         varchar(4096) NULL     DEFAULT NULL COMMENT '附加信息',
  creator                        varchar(64)   NULL     DEFAULT '' COMMENT '创建者',
  create_time                    datetime      NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater                        varchar(64)   NULL     DEFAULT '' COMMENT '更新者',
  update_time                    datetime      NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted                        bit(1)        NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = 'OAuth2 客户端表';

-- ----------------------------
-- Table structure for system_oauth2_code
-- ----------------------------
DROP TABLE IF EXISTS system_oauth2_code;
CREATE TABLE system_oauth2_code
(
  id           bigint       NOT NULL AUTO_INCREMENT COMMENT '编号',
  user_id      bigint       NOT NULL COMMENT '用户编号',
  user_type    tinyint      NOT NULL COMMENT '用户类型',
  code         varchar(32)  NOT NULL COMMENT '授权码',
  client_id    varchar(255) NOT NULL COMMENT '客户端编号',
  scopes       varchar(255) NULL     DEFAULT '' COMMENT '授权范围',
  expires_time datetime     NOT NULL COMMENT '过期时间',
  redirect_uri varchar(255) NULL     DEFAULT NULL COMMENT '可重定向的 URI 地址',
  state        varchar(255) NOT NULL DEFAULT '' COMMENT '状态',
  creator      varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time  datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater      varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time  datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted      bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id    bigint       NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = 'OAuth2 授权码表';
-- ----------------------------
-- Table structure for system_oauth2_refresh_token
-- ----------------------------
DROP TABLE IF EXISTS system_oauth2_refresh_token;
CREATE TABLE system_oauth2_refresh_token
(
  id            bigint       NOT NULL AUTO_INCREMENT COMMENT '编号',
  user_id       bigint       NOT NULL COMMENT '用户编号',
  refresh_token varchar(32)  NOT NULL COMMENT '刷新令牌',
  user_type     tinyint      NOT NULL COMMENT '用户类型',
  client_id     varchar(255) NOT NULL COMMENT '客户端编号',
  scopes        varchar(255) NULL     DEFAULT NULL COMMENT '授权范围',
  expires_time  datetime     NOT NULL COMMENT '过期时间',
  creator       varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time   datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater       varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time   datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted       bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id     bigint       NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = 'OAuth2 刷新令牌';


-- ----------------------------
-- Table structure for system_menu
-- ----------------------------
DROP TABLE IF EXISTS system_menu;
CREATE TABLE system_menu
(
  id             bigint       NOT NULL AUTO_INCREMENT COMMENT '菜单ID',
  name           varchar(50)  NOT NULL COMMENT '菜单名称',
  permission     varchar(100) NOT NULL DEFAULT '' COMMENT '权限标识',
  type           tinyint      NOT NULL COMMENT '菜单类型',
  sort           int          NOT NULL DEFAULT 0 COMMENT '显示顺序',
  parent_id      bigint       NOT NULL DEFAULT 0 COMMENT '父菜单ID',
  path           varchar(200) NULL     DEFAULT '' COMMENT '路由地址',
  icon           varchar(100) NULL     DEFAULT '#' COMMENT '菜单图标',
  component      varchar(255) NULL     DEFAULT NULL COMMENT '组件路径',
  component_name varchar(255) NULL     DEFAULT NULL COMMENT '组件名',
  status         tinyint      NOT NULL DEFAULT 0 COMMENT '菜单状态',
  visible        bit(1)       NOT NULL DEFAULT b'1' COMMENT '是否可见',
  keep_alive     bit(1)       NOT NULL DEFAULT b'1' COMMENT '是否缓存',
  always_show    bit(1)       NOT NULL DEFAULT b'1' COMMENT '是否总是显示',
  creator        varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time    datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater        varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time    datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted        bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '菜单权限表';

-- ----------------------------
-- Table structure for system_role
-- ----------------------------
DROP TABLE IF EXISTS system_role;
CREATE TABLE system_role
(
  id                  bigint       NOT NULL AUTO_INCREMENT COMMENT '角色ID',
  name                varchar(30)  NOT NULL COMMENT '角色名称',
  code                varchar(100) NOT NULL COMMENT '角色权限字符串',
  sort                int          NOT NULL COMMENT '显示顺序',
  data_scope          tinyint      NOT NULL DEFAULT 1 COMMENT '数据范围（1：全部数据权限 2：自定数据权限 3：本部门数据权限 4：本部门及以下数据权限）',
  data_scope_dept_ids varchar(500) NOT NULL DEFAULT '' COMMENT '数据范围(指定部门数组)',
  status              tinyint      NOT NULL COMMENT '角色状态（0正常 1停用）',
  type                tinyint      NOT NULL COMMENT '角色类型',
  remark              varchar(500) NULL     DEFAULT NULL COMMENT '备注',
  creator             varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time         datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater             varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time         datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted             bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id           bigint       NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '角色信息表';

-- ----------------------------
-- Table structure for system_role_menu
-- ----------------------------
DROP TABLE IF EXISTS system_role_menu;
CREATE TABLE system_role_menu
(
  id          bigint      NOT NULL AUTO_INCREMENT COMMENT '自增编号',
  role_id     bigint      NOT NULL COMMENT '角色ID',
  menu_id     bigint      NOT NULL COMMENT '菜单ID',
  creator     varchar(64) NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime    NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64) NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime    NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)      NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id   bigint      NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '角色和菜单关联表';

-- ----------------------------
-- Table structure for system_user_role
-- ----------------------------
DROP TABLE IF EXISTS system_user_role;
CREATE TABLE system_user_role
(
  id          bigint      NOT NULL AUTO_INCREMENT COMMENT '自增编号',
  user_id     bigint      NOT NULL COMMENT '用户ID',
  role_id     bigint      NOT NULL COMMENT '角色ID',
  creator     varchar(64) NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime    NULL     DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64) NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime    NULL     DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)      NULL     DEFAULT b'0' COMMENT '是否删除',
  tenant_id   bigint      NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '用户和角色关联表';

-- ----------------------------
-- Table structure for system_sms_channel
-- ----------------------------
DROP TABLE IF EXISTS system_sms_channel;
CREATE TABLE system_sms_channel
(
  id           bigint       NOT NULL AUTO_INCREMENT COMMENT '编号',
  signature    varchar(12)  NOT NULL COMMENT '短信签名',
  code         varchar(63)  NOT NULL COMMENT '渠道编码',
  status       tinyint      NOT NULL COMMENT '开启状态',
  remark       varchar(255) NULL     DEFAULT NULL COMMENT '备注',
  api_key      varchar(128) NOT NULL COMMENT '短信 API 的账号',
  api_secret   varchar(128) NULL     DEFAULT NULL COMMENT '短信 API 的秘钥',
  callback_url varchar(255) NULL     DEFAULT NULL COMMENT '短信发送回调 URL',
  creator      varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time  datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater      varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time  datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted      bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '短信渠道';

-- ----------------------------
-- Table structure for system_sms_code
-- ----------------------------
DROP TABLE IF EXISTS system_sms_code;
CREATE TABLE system_sms_code
(
  id          bigint       NOT NULL AUTO_INCREMENT COMMENT '编号',
  mobile      varchar(11)  NOT NULL COMMENT '手机号',
  code        varchar(6)   NOT NULL COMMENT '验证码',
  create_ip   varchar(15)  NOT NULL COMMENT '创建 IP',
  scene       tinyint      NOT NULL COMMENT '发送场景',
  today_index tinyint      NOT NULL COMMENT '今日发送的第几条',
  used        tinyint      NOT NULL COMMENT '是否使用',
  used_time   datetime     NULL     DEFAULT NULL COMMENT '使用时间',
  used_ip     varchar(255) NULL     DEFAULT NULL COMMENT '使用 IP',
  creator     varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id   bigint       NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE,
  INDEX idx_mobile (mobile ASC) USING BTREE COMMENT '手机号'
) ENGINE = InnoDB COMMENT = '手机验证码';

-- ----------------------------
-- Table structure for system_sms_log
-- ----------------------------
DROP TABLE IF EXISTS system_sms_log;
CREATE TABLE system_sms_log
(
  id               bigint       NOT NULL AUTO_INCREMENT COMMENT '编号',
  channel_id       bigint       NOT NULL COMMENT '短信渠道编号',
  channel_code     varchar(63)  NOT NULL COMMENT '短信渠道编码',
  template_id      bigint       NOT NULL COMMENT '模板编号',
  template_code    varchar(63)  NOT NULL COMMENT '模板编码',
  template_type    tinyint      NOT NULL COMMENT '短信类型',
  template_content varchar(255) NOT NULL COMMENT '短信内容',
  template_params  varchar(255) NOT NULL COMMENT '短信参数',
  api_template_id  varchar(63)  NOT NULL COMMENT '短信 API 的模板编号',
  mobile           varchar(11)  NOT NULL COMMENT '手机号',
  user_id          bigint       NULL     DEFAULT NULL COMMENT '用户编号',
  user_type        tinyint      NULL     DEFAULT NULL COMMENT '用户类型',
  send_status      tinyint      NOT NULL DEFAULT 0 COMMENT '发送状态',
  send_time        datetime     NULL     DEFAULT NULL COMMENT '发送时间',
  api_send_code    varchar(63)  NULL     DEFAULT NULL COMMENT '短信 API 发送结果的编码',
  api_send_msg     varchar(255) NULL     DEFAULT NULL COMMENT '短信 API 发送失败的提示',
  api_request_id   varchar(255) NULL     DEFAULT NULL COMMENT '短信 API 发送返回的唯一请求 ID',
  api_serial_no    varchar(255) NULL     DEFAULT NULL COMMENT '短信 API 发送返回的序号',
  receive_status   tinyint      NOT NULL DEFAULT 0 COMMENT '接收状态',
  receive_time     datetime     NULL     DEFAULT NULL COMMENT '接收时间',
  api_receive_code varchar(63)  NULL     DEFAULT NULL COMMENT 'API 接收结果的编码',
  api_receive_msg  varchar(255) NULL     DEFAULT NULL COMMENT 'API 接收结果的说明',
  creator          varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time      datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater          varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time      datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted          bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '短信日志';
-- ----------------------------
-- Table structure for system_sms_template
-- ----------------------------
DROP TABLE IF EXISTS system_sms_template;
CREATE TABLE system_sms_template
(
  id              bigint       NOT NULL AUTO_INCREMENT COMMENT '编号',
  type            tinyint      NOT NULL COMMENT '模板类型',
  status          tinyint      NOT NULL COMMENT '开启状态',
  code            varchar(63)  NOT NULL COMMENT '模板编码',
  name            varchar(63)  NOT NULL COMMENT '模板名称',
  content         varchar(255) NOT NULL COMMENT '模板内容',
  params          varchar(255) NOT NULL COMMENT '参数数组',
  remark          varchar(255) NULL     DEFAULT NULL COMMENT '备注',
  api_template_id varchar(63)  NOT NULL COMMENT '短信 API 的模板编号',
  channel_id      bigint       NOT NULL COMMENT '短信渠道编号',
  channel_code    varchar(63)  NOT NULL COMMENT '短信渠道编码',
  creator         varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time     datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater         varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time     datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted         bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '短信模板';
-- ----------------------------
-- Table structure for system_social_client
-- ----------------------------
DROP TABLE IF EXISTS system_social_client;
CREATE TABLE system_social_client
(
  id            bigint       NOT NULL AUTO_INCREMENT COMMENT '编号',
  name          varchar(255) NOT NULL COMMENT '应用名',
  social_type   tinyint      NOT NULL COMMENT '社交平台的类型',
  user_type     tinyint      NOT NULL COMMENT '用户类型',
  client_id     varchar(255) NOT NULL COMMENT '客户端编号',
  client_secret varchar(255) NOT NULL COMMENT '客户端密钥',
  agent_id      varchar(255) NULL     DEFAULT NULL COMMENT '代理编号',
  status        tinyint      NOT NULL COMMENT '状态',
  creator       varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time   datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater       varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time   datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted       bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id     bigint       NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '社交客户端表';

-- ----------------------------
-- Table structure for system_social_user
-- ----------------------------
DROP TABLE IF EXISTS system_social_user;
CREATE TABLE system_social_user
(
  id             bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键(自增策略)',
  type           tinyint         NOT NULL COMMENT '社交平台的类型',
  openid         varchar(32)     NOT NULL COMMENT '社交 openid',
  token          varchar(256)    NULL     DEFAULT NULL COMMENT '社交 token',
  raw_token_info varchar(1024)   NOT NULL COMMENT '原始 Token 数据，一般是 JSON 格式',
  nickname       varchar(32)     NOT NULL COMMENT '用户昵称',
  avatar         varchar(255)    NULL     DEFAULT NULL COMMENT '用户头像',
  raw_user_info  varchar(1024)   NOT NULL COMMENT '原始用户数据，一般是 JSON 格式',
  code           varchar(256)    NOT NULL COMMENT '最后一次的认证 code',
  state          varchar(256)    NULL     DEFAULT NULL COMMENT '最后一次的认证 state',
  creator        varchar(64)     NULL     DEFAULT '' COMMENT '创建者',
  create_time    datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater        varchar(64)     NULL     DEFAULT '' COMMENT '更新者',
  update_time    datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted        bit(1)          NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id      bigint          NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '社交用户表';

-- ----------------------------
-- Table structure for system_social_user_bind
-- ----------------------------
DROP TABLE IF EXISTS system_social_user_bind;
CREATE TABLE system_social_user_bind
(
  id             bigint UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键(自增策略)',
  user_id        bigint          NOT NULL COMMENT '用户编号',
  user_type      tinyint         NOT NULL COMMENT '用户类型',
  social_type    tinyint         NOT NULL COMMENT '社交平台的类型',
  social_user_id bigint          NOT NULL COMMENT '社交用户的编号',
  creator        varchar(64)     NULL     DEFAULT '' COMMENT '创建者',
  create_time    datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater        varchar(64)     NULL     DEFAULT '' COMMENT '更新者',
  update_time    datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted        bit(1)          NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id      bigint          NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '社交绑定表';

-- ----------------------------
-- Table structure for system_tenant
-- ----------------------------
DROP TABLE IF EXISTS system_tenant;
CREATE TABLE system_tenant
(
  id              bigint       NOT NULL AUTO_INCREMENT COMMENT '租户编号',
  name            varchar(30)  NOT NULL COMMENT '租户名',
  contact_user_id bigint       NULL     DEFAULT NULL COMMENT '联系人的用户编号',
  contact_name    varchar(30)  NOT NULL COMMENT '联系人',
  contact_mobile  varchar(500) NULL     DEFAULT NULL COMMENT '联系手机',
  status          tinyint      NOT NULL DEFAULT 0 COMMENT '租户状态（0正常 1停用）',
  website         varchar(256) NULL     DEFAULT '' COMMENT '绑定域名',
  package_id      bigint       NOT NULL COMMENT '租户套餐编号',
  expire_time     datetime     NOT NULL COMMENT '过期时间',
  account_count   int          NOT NULL COMMENT '账号数量',
  creator         varchar(64)  NOT NULL DEFAULT '' COMMENT '创建者',
  create_time     datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater         varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time     datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted         bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '租户表';
-- ----------------------------
-- Table structure for system_tenant_package
-- ----------------------------
DROP TABLE IF EXISTS system_tenant_package;
CREATE TABLE system_tenant_package
(
  id          bigint        NOT NULL AUTO_INCREMENT COMMENT '套餐编号',
  name        varchar(30)   NOT NULL COMMENT '套餐名',
  status      tinyint       NOT NULL DEFAULT 0 COMMENT '租户状态（0正常 1停用）',
  remark      varchar(256)  NULL     DEFAULT '' COMMENT '备注',
  menu_ids    varchar(4096) NOT NULL COMMENT '关联的菜单编号',
  creator     varchar(64)   NOT NULL DEFAULT '' COMMENT '创建者',
  create_time datetime      NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64)   NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime      NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)        NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '租户套餐表';

-- ----------------------------
-- Table structure for system_users
-- ----------------------------
DROP TABLE IF EXISTS system_users;
CREATE TABLE system_users
(
  id          bigint       NOT NULL AUTO_INCREMENT COMMENT '用户ID',
  username    varchar(30)  NOT NULL COMMENT '用户账号',
  password    varchar(100) NOT NULL DEFAULT '' COMMENT '密码',
  nickname    varchar(30)  NOT NULL COMMENT '用户昵称',
  remark      varchar(500) NULL     DEFAULT NULL COMMENT '备注',
  dept_id     bigint       NULL     DEFAULT NULL COMMENT '部门ID',
  post_ids    varchar(255) NULL     DEFAULT NULL COMMENT '岗位编号数组',
  email       varchar(50)  NULL     DEFAULT '' COMMENT '用户邮箱',
  mobile      varchar(11)  NULL     DEFAULT '' COMMENT '手机号码',
  sex         tinyint      NULL     DEFAULT 0 COMMENT '用户性别',
  avatar      varchar(512) NULL     DEFAULT '' COMMENT '头像地址',
  status      tinyint      NOT NULL DEFAULT 0 COMMENT '帐号状态（0正常 1停用）',
  login_ip    varchar(50)  NULL     DEFAULT '' COMMENT '最后登录IP',
  login_date  datetime     NULL     DEFAULT NULL COMMENT '最后登录时间',
  creator     varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id   bigint       NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE,
  UNIQUE INDEX idx_username (username ASC, update_time ASC, tenant_id ASC) USING BTREE
) ENGINE = InnoDB
  AUTO_INCREMENT = 2 COMMENT = '用户信息表';
BEGIN;
INSERT INTO system_users (id, username, password, nickname, remark, dept_id, post_ids, email, mobile, sex, avatar, status, login_ip, login_date, creator, create_time, updater, update_time, deleted, tenant_id)
VALUES (1, 'admin', '$2a$10$mRMIYLDtRHlf6.9ipiqH1.Z.bh/R9dO9d5iHiGYPigi6r5KOoR2Wm', '芋道源码', '管理员', 103, '[1]', 'aoteman@126.com', '18818260277', 2, 'http://test.yudao.iocoder.cn/96c787a2ce88bf6d0ce3cd8b6cf5314e80e7703cd41bf4af8cd2e2909dbd6b6d.png', 0, '0:0:0:0:0:0:0:1', '2024-04-29 21:50:32', 'admin', '2021-01-05 17:03:47', NULL, '2024-04-29 21:50:32', b'0', 1);
COMMIT;

-- ----------------------------
-- Table structure for system_notify_message
-- ----------------------------
DROP TABLE IF EXISTS system_notify_message;
CREATE TABLE system_notify_message
(
  id                bigint        NOT NULL AUTO_INCREMENT COMMENT '用户ID',
  user_id           bigint        NOT NULL COMMENT '用户id',
  user_type         tinyint       NOT NULL COMMENT '用户类型',
  template_id       bigint        NOT NULL COMMENT '模版编号',
  template_code     varchar(64)   NOT NULL COMMENT '模板编码',
  template_nickname varchar(63)   NOT NULL COMMENT '模版发送人名称',
  template_content  varchar(1024) NOT NULL COMMENT '模版内容',
  template_type     int           NOT NULL COMMENT '模版类型',
  template_params   varchar(255)  NOT NULL COMMENT '模版参数',
  read_status       bit(1)        NOT NULL COMMENT '是否已读',
  read_time         datetime      NULL     DEFAULT NULL COMMENT '阅读时间',
  creator           varchar(64)   NULL     DEFAULT '' COMMENT '创建者',
  create_time       datetime      NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater           varchar(64)   NULL     DEFAULT '' COMMENT '更新者',
  update_time       datetime      NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted           bit(1)        NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id         bigint        NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '站内信消息表';

-- ----------------------------
-- Table structure for system_notify_template
-- ----------------------------
DROP TABLE IF EXISTS system_notify_template;
CREATE TABLE system_notify_template
(
  id          bigint        NOT NULL AUTO_INCREMENT COMMENT '主键',
  name        varchar(63)   NOT NULL COMMENT '模板名称',
  code        varchar(64)   NOT NULL COMMENT '模版编码',
  nickname    varchar(255)  NOT NULL COMMENT '发送人名称',
  content     varchar(1024) NOT NULL COMMENT '模版内容',
  type        tinyint       NOT NULL COMMENT '类型',
  params      varchar(255)  NULL     DEFAULT NULL COMMENT '参数数组',
  status      tinyint       NOT NULL COMMENT '状态',
  remark      varchar(255)  NULL     DEFAULT NULL COMMENT '备注',
  creator     varchar(64)   NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime      NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64)   NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime      NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)        NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '站内信模板表';

-- ----------------------------
-- Table structure for system_mail_account
-- ----------------------------
DROP TABLE IF EXISTS system_mail_account;
CREATE TABLE system_mail_account
(
  id              bigint       NOT NULL AUTO_INCREMENT COMMENT '主键',
  mail            varchar(255) NOT NULL COMMENT '邮箱',
  username        varchar(255) NOT NULL COMMENT '用户名',
  password        varchar(255) NOT NULL COMMENT '密码',
  host            varchar(255) NOT NULL COMMENT 'SMTP 服务器域名',
  port            int          NOT NULL COMMENT 'SMTP 服务器端口',
  ssl_enable      bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否开启 SSL',
  starttls_enable bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否开启 STARTTLS',
  creator         varchar(64)  NULL     DEFAULT '' COMMENT '创建者',
  create_time     datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater         varchar(64)  NULL     DEFAULT '' COMMENT '更新者',
  update_time     datetime     NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted         bit(1)       NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '邮箱账号表';

-- ----------------------------
-- Table structure for system_mail_log
-- ----------------------------
DROP TABLE IF EXISTS system_mail_log;
CREATE TABLE system_mail_log
(
  id                bigint         NOT NULL AUTO_INCREMENT COMMENT '编号',
  user_id           bigint         NULL     DEFAULT NULL COMMENT '用户编号',
  user_type         tinyint        NULL     DEFAULT NULL COMMENT '用户类型',
  to_mail           varchar(255)   NOT NULL COMMENT '接收邮箱地址',
  account_id        bigint         NOT NULL COMMENT '邮箱账号编号',
  from_mail         varchar(255)   NOT NULL COMMENT '发送邮箱地址',
  template_id       bigint         NOT NULL COMMENT '模板编号',
  template_code     varchar(63)    NOT NULL COMMENT '模板编码',
  template_nickname varchar(255)   NULL     DEFAULT NULL COMMENT '模版发送人名称',
  template_title    varchar(255)   NOT NULL COMMENT '邮件标题',
  template_content  varchar(10240) NOT NULL COMMENT '邮件内容',
  template_params   varchar(255)   NOT NULL COMMENT '邮件参数',
  send_status       tinyint        NOT NULL DEFAULT 0 COMMENT '发送状态',
  send_time         datetime       NULL     DEFAULT NULL COMMENT '发送时间',
  send_message_id   varchar(255)   NULL     DEFAULT NULL COMMENT '发送返回的消息 ID',
  send_exception    varchar(4096)  NULL     DEFAULT NULL COMMENT '发送异常',
  creator           varchar(64)    NULL     DEFAULT '' COMMENT '创建者',
  create_time       datetime       NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater           varchar(64)    NULL     DEFAULT '' COMMENT '更新者',
  update_time       datetime       NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted           bit(1)         NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '邮件日志表';

-- ----------------------------
-- Table structure for system_mail_template
-- ----------------------------
DROP TABLE IF EXISTS system_mail_template;
CREATE TABLE system_mail_template
(
  id          bigint         NOT NULL AUTO_INCREMENT COMMENT '编号',
  name        varchar(63)    NOT NULL COMMENT '模板名称',
  code        varchar(63)    NOT NULL COMMENT '模板编码',
  account_id  bigint         NOT NULL COMMENT '发送的邮箱账号编号',
  nickname    varchar(255)   NULL     DEFAULT NULL COMMENT '发送人名称',
  title       varchar(255)   NOT NULL COMMENT '模板标题',
  content     varchar(10240) NOT NULL COMMENT '模板内容',
  params      varchar(255)   NOT NULL COMMENT '参数数组',
  status      tinyint        NOT NULL COMMENT '开启状态',
  remark      varchar(255)   NULL     DEFAULT NULL COMMENT '备注',
  creator     varchar(64)    NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime       NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64)    NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime       NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)         NOT NULL DEFAULT b'0' COMMENT '是否删除',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB COMMENT = '邮件模版表';

-- ----------------------------
-- Table structure for system_notice
-- ----------------------------
DROP TABLE IF EXISTS system_notice;
CREATE TABLE system_notice
(
  id          bigint      NOT NULL AUTO_INCREMENT COMMENT '公告ID',
  title       varchar(50) NOT NULL COMMENT '公告标题',
  content     text        NOT NULL COMMENT '公告内容',
  type        tinyint     NOT NULL COMMENT '公告类型（1通知 2公告）',
  status      tinyint     NOT NULL DEFAULT 0 COMMENT '公告状态（0正常 1关闭）',
  creator     varchar(64) NULL     DEFAULT '' COMMENT '创建者',
  create_time datetime    NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  updater     varchar(64) NULL     DEFAULT '' COMMENT '更新者',
  update_time datetime    NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  deleted     bit(1)      NOT NULL DEFAULT b'0' COMMENT '是否删除',
  tenant_id   bigint      NOT NULL DEFAULT 0 COMMENT '租户编号',
  PRIMARY KEY (id) USING BTREE
) ENGINE = InnoDB  COMMENT = '通知公告表';


SET FOREIGN_KEY_CHECKS = 1;






